package com.sinog.core.domain;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.extension.activerecord.Model;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.io.Serializable;
import java.util.Date;

/**
 * @desc 流程过程记录表
 * @author wangxj
 * @date 2021-06-30 15:59
 */
@EqualsAndHashCode(callSuper = true)
@Data
@TableName("prisoner_ts")
public class PrisonerTs extends Model<PrisonerTs> {

    /**
     * 编号
     */
    @TableId(type = IdType.INPUT)
    private String id;
    /**
     * 犯罪编号
     */
    private String priNum;
    /**
     * 户籍所在省
     */
    private String nativepro;
    /**
     * 户籍所在地市
     */
    private String nativecity;
    /**
     * 户籍所在区县
     */
    private String nativecou;
    /**
     * 户籍所在乡镇
     */
    private String nativevill;
    /**
     * 户籍所在省name
     */
    private String nativeproName;
    /**
     * 户籍所在地市name
     */
    private String nativecityName;
    /**
     * 户籍所在区县name
     */
    private String nativecouName;
    /**
     * 户籍所在乡镇name
     */
    private String nativevillName;
    /**
     * 户籍地详细地址
     */
    private String nativenum;
    /**
     * 户籍所在省
     */
    private String newNativepro;
    /**
     * 户籍所在地市
     */
    private String newNativecity;
    /**
     * 户籍所在区县
     */
    private String newNativecou;
    /**
     * 户籍所在乡镇
     */
    private String newNativevill;
    /**
     * 推送户籍所在省name
     */
    private String newNativeproName;
    /**
     * 推送户籍所在地市name
     */
    private String newNativecityName;
    /**
     * 推送户籍所在区县name
     */
    private String newNativecouName;
    /**
     * 推送户籍所在乡镇name
     */
    private String newNativevillName;
    /**
     * 推送地详细地址
     */
    private String newNativenum;
    /**
     * 核查失败原因及可能去向
     */
    private String priReason;
    /**
     * 添加人员
     */
    private String adduserId;
    /**
     * 手机号码
     */
    private String phoneNumber;
    /**
     * 电话号码
     */
    private String fixedlineNumber;
    /**
     * 服刑单位
     */
    private String pdanwei;
    /**
     * 专监单位
     */
    private String zpdanwei;
    /**
     * 任务类型 1:转监,2:更改户籍,3:区县司法所推送,4:地市司法局推送,5:司法厅推送,6:区县司法局上报,7:地市司法局上报,
     * 8:司法厅退回监狱,9:监狱发起核查,10:监狱撤回核查,11:监狱再次发起核查,12:监狱转入原侦查机关,13:司法所核查失败(也是司法所上报司法局),
     * 14:司法所核查成功,15:只做保存
     */
    private String type;
    /**
     * 迁移状态 0:撤回迁移状态 1:发起迁移状态 2:迁移成功状态 3:迁移拒绝状态 4:重新发起迁移状态 5:衔接期内,转监任务还未做处理的省份,自动驳回 6:跨省转监的僵尸数据,自动驳回,联系工作人员处理
     */
    private String tranState;
    /**
     * 备注:司法厅办理业务保存按钮
     * 办理任务 1:推送,2:上报,3:退回监狱
     */
    private String pushState;
    /**
     * 操作人
     */
    private String operationName;
    /**
     * 创建账号
     */
    private String createUser;
    /**
     * 更新账号
     */
    private String updateUser;
    /**
     * 创建时间
     */
    @JsonFormat(locale = "zh", timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
    private Date createTime;
    /**
     * 更新时间
     */
    @JsonFormat(locale = "zh", timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
    private Date updateTime;

    @Override
    protected Serializable pkVal() {
        return id;
    }
}